61 research outputs found

    Una Introducción al Enterprise Service Bus

    Get PDF
    En este documento se introducen los buses de servicios empresariales, se describen sus funcionalidades y se presentan algunos buses de código abierto

    Procesamiento de Eventos Complejos en Arquitecturas Orientadas a Servicios 2.0

    Get PDF
    En este documento se describen las arquitecturas orientadas a servicios, las arquitecturas dirigidas por eventos, los buses de servicios empresariales, las arquitecturas orientadas a servicios y dirigidas por eventos, y el procesamiento de eventos complejos. Además, se propone la integración del procesamiento de eventos complejos con las arquitecturas orientadas a servicios y dirigidas por eventos

    Procesamiento de Eventos Complejos con Esper

    Get PDF
    En este documento se introduce el procesamiento de eventos complejos, una tecnología emergente que permite analizar y correlacionar información en forma de eventos con el propósito de detectar situaciones críticas o relevantes en tiempo real. Además, se presenta el motor Esper y su lenguaje de procesamiento de eventos EPL

    Model-Driven Development of Domain-Specific Interfaces for Complex Event Processing in Service-Oriented Architectures

    Get PDF
    Juan Boubeta-Puig has been honoured with the Extraordinary PhD Award.En la actualidad, las empresas y organizaciones de todo el planeta necesitan gestionar cada día una ingente cantidad de datos provenientes de fuentes muy diversas, tales como aplicaciones propias y de terceros, servicios web, sensores, plataformas de Internet de las cosas o redes sociales, con el fin de llevar a cabo la toma de decisiones. Un buen proceso de toma de decisiones requiere, entre otros factores, conocer tan pronto como sea posible cuál es el valor que tienen dichos datos para el negocio empresarial. La realización de un exhaustivo análisis de datos, así como una actuación temprana en relación a las situaciones críticas o relevantes que supongan una amenaza para la empresa, permitirá que esta se posicione por encima de sus competidores. No obstante, se trata de un proceso bastante complejo, debido, entre otras razones, a que gran parte de estos datos son heterogéneos - no comparten un formato común - y además deberían procesarse en tiempo real. En este contexto, el procesamiento de eventos complejos o CEP (Complex Event Processing) es una de las tecnologías software que permite analizar y correlacionar grandes volúmenes de datos en forma de eventos con el propósito de detectar situaciones de una mayor complejidad semántica, así como inferir conocimiento valioso que ayudará en el proceso de toma de decisiones. Para ello, se hace uso de los denominados patrones de eventos en los que se especifican las condiciones que han de cumplirse para detectar dichas situaciones de interés. A pesar de las grandes ventajas que CEP puede aportar en el ámbito empresarial, supone un gran reto para los usuarios que son expertos en el negocio, pero que carecen de la experiencia y los conocimientos necesarios para el uso de esta tecnología. Uno de los principales problemas a los que deben enfrentarse estos usuarios es precisamente la definición de dichos patrones usando algún lenguaje concreto, los denominados lenguajes de procesamiento de eventos o EPL (Event Processing Language). Aunque algunas soluciones software actuales ofrecen herramientas gráficas con la finalidad de solventar este problema, estas no son lo suficientemente amigables, puesto que requieren que el usuario escriba manualmente, al menos, una parte del código necesario para la definición de los patrones. Por otra parte, los sistemas de información actuales tienden a estar basados en arquitecturas orientadas a servicios o SOA (Service-Oriented Architecture), debido a que este tipo de arquitectura software permite desarrollar sistemas distribuidos altamente escalables e integrables con otros sistemas propios o de terceros. Recientemente, estas se están combinando con las arquitecturas dirigidas por eventos o EDA (Event-Driven Architecture) dando como resultado las denominadas arquitecturas orientadas a servicios y dirigidas por eventos - ED-SOA (Event-Driven Service-Oriented Architecture) o SOA 2.0, que se caracterizan porque las comunicaciones entre los usuarios, las aplicaciones y los servicios se realizan por medio de eventos de una forma totalmente desacoplada. Para detectar, en tiempo real, situaciones críticas o relevantes en estos sistemas complejos y heterogéneos, así como de ejecutar las acciones pertinentes, se hace necesaria la integración de CEP con SOA 2.0. Con el fin de dar respuesta a estas necesidades, la investigación llevada a cabo en esta tesis doctoral se ha centrado en el desarrollo dirigido por modelos de interfaces específicas de dominio para CEP en SOA 2.0, con el objeto de facilitar a los expertos en el negocio la definición tanto de los patrones que necesiten detectar en sus sistemas de información, como de las alertas que deban notificarse en tiempo real. Para lograrlo, se ha propuesto un enfoque dirigido por modelos para CEP en SOA 2.0, un lenguaje de modelado y un editor gráfico para la definición de dominios CEP, un lenguaje de modelado y un editor gráfico reconfigurable para la definición y la generación de código de patrones de eventos, así como una solución tecnológica que integra CEP con SOA 2.0. Para la evaluación del enfoque se han desarrollado dos casos de estudio que confirman que este es independiente del dominio donde se aplique. Asimismo, se concluye que los lenguajes definidos son independientes del código que implemente los patrones de eventos y las acciones a llevar a cabo, así como que los editores gráficos facilitan todo esto de una forma amigable e intuitiva, y haciendo los detalles de implementación totalmente transparentes para los expertos en el negocio. Se trata, por tanto, de un enfoque novedoso que pone la tecnología CEP al alcance de cualquier usuario, repercutiendo beneficiosamente en el proceso de toma de decisiones.Nowadays, companies and organizations all around the world need to manage huge amounts of data from heterogeneous sources - such as own and third-party applications, web services, sensors, Internet of things platforms or social networks - every day in order to conduct the decision-making process. To be successful, a decision-making process requires, among other factors, prompt information regarding what the value of such data is for the business in question. A thorough analysis of data, as well as early action for critical or relevant situations considered as threats for an organization, will allow the organization to be positioned above its competitors. Nevertheless, it is a complex process since, among other reasons, data are heterogeneous - they do not share a common format - and they should be processed in real time. In this context, Complex Event Processing (CEP) is a technology that allows the analysis and correlation of large volumes of data with the aim of detecting complex and meaningful events, and of inferring valuable knowledge for end users. This knowledge will be really helpful in the decision-making process. To do this, so-called event patterns are used. These patterns specify which conditions must be met in order to detect such situations of interest. Despite the great advantages that CEP can bring to a business, it is a substantial challenge for users who are business experts, but do not have the necessary experience and knowledge for the use of this technology. One of the main problems these users have to face is precisely the definition of these event patterns using particular languages, those called Event Processing Languages (EPLs). Although some current software solutions provide graphical tools in order to solve this problem, none of them are user-friendly enough, since they require users to hand-write at least a portion of the code for the pattern definition. On the other hand, current information systems tend to be based on Service-Oriented Architectures (SOAs) due to the fact that this type of software architecture allows the development of highly scalable distributed systems as well as their integration with own and third-party systems. Recently, these are being combined with Event-Driven Architectures (EDAs), what is known as Event-Driven Service-Oriented Architectures (ED-SOAs or SOAs 2.0). The latter enable us to establish decoupled communications between users, applications and services. The integration of CEP with SOA 2.0 is a requirement to be able to detect real-time, relevant or critical situations in these complex and heterogeneous systems, as well as for the execution of the appropriate actions. In order to respond to these needs, the research carried out in this thesis has focused on the model-driven development of domain-specific interfaces for CEP in SOAs 2.0, with the aim of facilitating the task of defining both event patterns to be detected and alerts for real time notification for domain experts. To reach this goal, the following contributions have been supplied: a model-driven approach for CEP in SOA 2.0, a modeling language and a graphical editor for CEP domain definition, a modeling language and a reconfigurable graphical editor for event pattern definition and code generation, as well as a technological solution integrating CEP with SOA 2.0. The approach has been evaluated through the development of two case studies that have confirmed independence of the approach from the application domain. Besides, we can assert that the proposed languages are independent of event patterns and actions implementation code and that user-friendly and intuitive graphical editors hide all the implementation details from end users. This is therefore a novel approach for bringing CEP technology closer to any user, positively impacting the decision making process

    Implementación de operadores de mutación para WS-BPEL 2.0

    Get PDF
    En este proyecto fin de carrera se completa una herramienta real denominada GAmera desarrollada en el grupo de investigación SPI&FM. GAmera es una herramienta de generación de mutantes para WS-BPEL que en vez de generarlos todos genera sólo un subconjunto de ellos. Dicha herramienta se divide en dos partes: un algoritmo genético que dirige todo el proceso y un entorno que compara los mutantes con el proceso original, para comprobar si su comportamiento varía o no. Este PFC se enmarca dentro de esta segunda parte

    MEdit4CEP: Una Solución Dirigida por Modelos para el Procesamiento de Eventos Complejos en SOA 2.0

    Get PDF
    El procesamiento de eventos complejos (CEP) es una tecnología emergente que permite procesar, analizar y correlacionar ingentes volúmenes de datos con el fin de detectar en tiempo real situaciones críticas o relevantes para un dominio en particular. Los lenguajes de procesamiento de eventos (EPL) permiten implementar los patrones de eventos a registrar en motores CEP para detectar dichas situaciones. Para llevar a cabo esta tarea, el usuario debe tener un alto grado de experiencia en estos lenguajes. Sin embargo, los usuarios suelen tener un vasto conocimiento en el dominio para el que se necesitan definir ciertos patrones, pero que son inexpertos tanto en EPL como en el lenguaje requerido para implementar las acciones a ejecutar tras la detección de los eventos en sus sistemas de información. En este curso, se introducirán los fundamentos de esta tecnología y se implementarán varios casos prácticos haciendo uso de MEdit4CEP, una solución dirigida por modelos para CEP en arquitecturas orientadas a servicios y dirigidas por eventos (SOA 2.0). Se trata de un enfoque novedoso que pone CEP al alcance de cualquier usuario

    Procesamiento de eventos complejos aplicado al ámbito de las smart cities

    Get PDF
    El procesamiento de eventos complejos (CEP) es una tecnología emergente que permite procesar, analizar y correlacionar ingentes volúmenes de datos con el fin de detectar en tiempo real situaciones críticas o relevantes para un dominio en particular. Los lenguajes de procesamiento de eventos (EPL) permiten implementar los patrones de eventos a registrar en motores CEP para detectar dichas situaciones. Para llevar a cabo esta tarea, el usuario debe tener un alto grado de experiencia en estos lenguajes. Sin embargo, los usuarios suelen tener un vasto conocimiento en el dominio para el que se necesitan definir ciertos patrones, pero que son inexpertos tanto en EPL como en el lenguaje requerido para implementar las acciones a ejecutar tras la detección de los eventos en sus sistemas de información. En esta charla, se introducirán los fundamentos de esta tecnología y se presentarán varios casos prácticos en el ámbito de las smart cities haciendo uso de MEdit4CEP, una solución dirigida por modelos para CEP en arquitecturas orientadas a servicios y dirigidas por eventos.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    EDALoCo: Enhancing the accessibility of blockchains through a low-code approach to the development of event-driven applications for smart contract management

    Get PDF
    Blockchain is a cutting-edge technology based on a distributed, secure and immutable ledger that facilitates the registration of transactions and the traceability of tangible and intangible assets without requiring central governance. The agreements between the nodes participating in a blockchain network are defined through smart contracts. However, the compilation, deployment, interaction and monitoring of these smart contracts is a barrier compromising the accessibility of blockchains by non-expert developers. To address this challenge, in this paper, we propose a low-code approach, called EDALoCo, that facilitates the development of event-driven applications for smart contract management. These applications make blockchain more accessible for software developers who are non-experts in this technology as these can be modeled through graphical flows, which specify the communications between data producers, data processors and data consumers. Specifically, we have enhanced the open-source Node-RED low-code platform with blockchain technology, giving support for the creation of user-friendly and lightweight event-driven applications that can compile and deploy smart contracts in a particular blockchain. Additionally, this platform extension allows users to interact with and monitor the smart contracts already deployed in a blockchain network, hiding the implementation details from non-experts in blockchain. This approach was successfully applied to a case study of COVID-19 vaccines to monitor and obtain the temperatures to which these vaccines are continuously exposed, to process them and then to store them in a blockchain network with the aim of making them immutable and traceable to any user. As a conclusion, our approach enables the integration of blockchain with the low-code paradigm, simplifying the development of lightweight event-driven applications for smart contract management. The approach comprises a novel open-source solution that makes data security, immutability and traceability more accessible to software developers who are non-blockchain experts

    CEPchain: A graphical model-driven solution for integrating complex event processing and blockchain

    Get PDF
    Blockchain provides an immutable distributed ledger for storing transactions. One of the challenges of blockchain is the particular processing of dynamic queries due to accumulating costs. Complex Event Processing (CEP) provides efficient and effective support for this in a way, however, that is difficult to integrate with blockchain. This paper addresses the research challenges of integrating blockchain with CEP. More specifically, we envision an effective development environment in which (i) event-driven smart contracts are modeled in a graphical way, which are, in turn, (ii) automatically transformed into complementary code that is deployed in both a CEP engine and a blockchain network, and then (iii) executed on off-chain CEP applications which, connected to different data sources and sinks, automatically invoke smart contracts when event pattern conditions are met. We follow a classic systems engineering approach for defining the concepts of our system, called CEPchain, which addresses the described requirements. CEPchain was evaluated using a real-world case study for vaccine delivery, which requires an unbroken cold chain. The results demonstrate that our approach can be applied without requiring experts on event processing and smart contract languages. Our contribution simplifies the design of integrated CEP and blockchain functionality by hiding implementation details and supporting efficient deployment.This work was supported by the Spanish Ministry of Science and Innovation under the ‘‘Estancias de movilidad en el extranjero José Castillejo para jóvenes doctores’’ program [grant number CAS19/00241], and the Spanish Ministry of Science and Innovation and the European Regional Development Funds under project FAME [grant number RTI2018-093608-B-C33]. The authors would like to thank Orlenys López-Pintado for his help with the Caterpillar tool and his insightful comments. Juan Boubeta-Puig would also like to thank the Institute for Information Business for their hospitality when visiting them at the Vienna University of Economics and Business, Austria, where part of this work was developed

    MEdit4CEP: A model-driven solution for real-time decision making in SOA 2.0

    Get PDF
    Organizations all around the world need to manage huge amounts of data from heterogeneous sources every day in order to conduct decision making processes. This requires them to infer what the value of such data is for the business in question through data analysis as well as acting promptly for critical or relevant situations. Complex Event Processing (CEP) is a technology that helps tackle this issue by detecting event patterns in real time. However, this technology forces domain experts to define these patterns indicating such situations and the appropriate actions to be executed in their information systems, generally based on Service-Oriented Architectures (SOAs). In particular, these users face the incommodity of implementing these patterns manually or by using editors which are not user-friendly enough. To deal with this problem, a model-driven solution for real-time decision making in event-driven SOAs is proposed and conducted in this paper. This approach allows the integration of CEP with this architecture type as well as defining CEP domain and event pattern through a graphical and intuitive editor, which also permits automatic code generation. Moreover, the solution is evaluated and its benefits are discussed. As a result, we can assert this is a novel solution for bringing CEP technology closer to any user, positively impacting on business decision making processes
    corecore